// -----------------------------
// Author: 		Dhaenens Gert 
// Creation: 	2/19/2014 9:04:26 AM				
// -----------------------------

#ifndef _DxCommon_h
#define _DxCommon_h

/* Enums */
#include "DxEnum.h"
/* Type Defines */
#include "DxLibTypeDef.h"
/* Shapes */
#include "DxShapes.h"

/* Win32 Headers */
#ifdef _WIN32
#	define WIN32_LEAN_AND_MEAN
#	include <Windows.h>
#	include <tchar.h>
#endif

/* Common Functions */
namespace DxLib
{

	/* Releases the Interface if it */
	/* is not null. Then sets it back */
	/* to null. */
	template<typename T>
	void NullRelease(T** lpInterface)
	{
		if ((*lpInterface) != nullptr)
		{
			(*lpInterface)->Release();
			(*lpInterface) = nullptr;
		}
	}

}

#endif